SNMPTRAPD(8) | Net-SNMP | SNMPTRAPD(8) |
名前¶
snmptrapd - SNMP trap メッセージの受信と記録
書式¶
snmptrapd [OPTIONS] [LISTENING ADDRESSES]
説明¶
snmptrapd は SNMP TRAP や INFORM メッセージを受信し記録する SNMP アプリケーションである。
注意: デフォルトはすべての IPv4 インターフェースの UDP ポート 162 上で動作する。 162 は特権ポートなので、 snmptrapd は典型的に root として実行しなくてはならない。
オプション¶
- -a
- authenticationFailure trap を無視する。
- -A
- 切り捨てずにログファイルへ追記する。
このオプションはこれが適用される -Lf オプションの 前に 指定する必要がある点に注意。
- -c FILE
- FILE を設定ファイルとして読み込む。 (あるいはコンマで区切られた設定ファイルのリスト)
- -C
- -c オプションで指定したものを除いて、設定ファイルを読み込まない。
- -d
- 送受信した SNMP パケットを (16 進数で) ダンプする。
- -D[TOKEN[,...]]
- TOKEN(s) で与えられたデバッグ出力を有効にする。 極めて冗長な出力を得るには ALL を指定する。
- -f
- 呼び出し shell から fork() しない。
- -F FORMAT
- 標準出力へ記録する時、 FORMAT 文字で指定されたフォーマットを使う。 詳細は以下の フォーマットの仕様 セクションを参照。
- -h, --help
- 簡単な使用法を表示して終了する。
- -H
- trap デーモンが理解する設定ファイルのディレクティブのリストを表示して終了する。
- -I [-]INITLIST
- snmptrapd
が動き始める時に、どのモジュールを初期化すべきか
(あるいはすべきではないか)
を指定する。
コンマ区切りの INITLIST
の前に '-'
がついた場合は、開始すべき
ではない
モジュールのリストである。
それ以外の場合は、開始すべき
唯一の
モジュールリストである。
コンパイルされたモジュールのリストを得るには、 -Dmib_init -H オプションとともに snmptrapd を実行する。 (デバッグサポートをコンパイル時に有効にする必要がある)
- -L[efos]
- ログの出力がどこへ向けられるべきかを指定する。(標準エラーあるいは標準出力、ファイルへ、ないし、syslog経由) 詳細は snmpcmd(1) 内のログオプションを参照。
- -m MIBLIST
- このアプリケーションで読み込む MIB モジュールのリストをコンマ区切りで指定する。 これは環境変数 MIBS を上書きする。 詳細は snmpcmd(1) を参照。
- -M DIRLIST
- MIB を探すためのディレクトリリストをコンマ区切りで指定する。 これは環境変数 MIBDIRS を上書きする。 詳細は snmpcmd(1) を参照。
- -n
- 受信パケットのソースアドレスからホスト名への変換を試みない。
- -p FILE
- trap デーモンのプロセス ID を FILE へ保存する。
- -O [abeEfnqQsStTuUvxX]
- MIB オブジェクトやその他の出力がどのように表示されるべきかを指定する。 詳細は snmpcmd(1) マニュアルページの 出力オプション セクションを参照。
- -t
- trap を syslog へ記録しない。 これは syslog への記録を無効にする。 これは、snmptrapd アプリケーションに traphandle フック だけ を実行させ、 trap を任意の場所へ記録したくない場合に有用である。
- -v, --version
- trap デーモンのバージョン情報を表示し終了する。
- -x ADDRESS
- デフォルトの "/var/agentx/master" ではなく、指定したアドレス上の AgentX マスターエージェントへ接続する。 アドレスフォーマットの詳細は snmpd(8) を参照。
- -X
- AgentX マスターエージェントへ接続しない。
- --name="value"
- snmptrapd.conf ファイルでサポートされるトークン ("name") を指定することを許可し、その値を "value" に設定する。 snmptrapd.conf 内の対応するトークンを上書きする。 トークンの完全なリストは snmptrapd.conf(5) を参照。
フォーマットの仕様¶
snmptrapd は printf(3) と同様にフォーマット文字を解釈する。 次のフォーマットシーケンスを理解する:
- %%
- % の文字リテラル
- %a
- PDU の agent-addr フィールドの内容 (v1 TRAP のみ)
- %A
- もし利用可能であれば PDU の agent-addr フィールドの内容に対応するホスト名、なければ PDU の agent-addr フィールドの内容 (v1 TRAP のみ)
- %b
- PDU
トランスポートアドレス
(注意:
これは必ずしも IPv4
アドレスではない)
"[UDP: [172.16.10.12]:23456->[10.150.0.8]]" のような何か - %B
- もし利用可能であれば PDU ソースホスト名、なければ PDU ソースアドレス (上記の注意点参照)
- %E
- SNMPv3 コンテキストエンジン ID
- %h
- ローカルシステム上の現在の時(hour)
- %H
- sysUptime.0 varbind からの時 (hour) フィールド
- %j
- ローカルシステム上の現在の分
- %J
- sysUpTime.0 varbind からの分フィールド
- %k
- ローカルシステム上の現在の秒
- %K
- sysUpTime.0 varbind からの秒フィールド
- %l
- ローカルシステム上の現在の月
- %L
- sysUpTime.0 varbind からの月フィールド
- %m
- ローカルシステム上の現在の月 (数値)
- %M
- sysUpTime.0 varbind からの月 (数値) フィールド
- %N
- エンタープライズ文字列
- %P
- PDU からのセキュリティ情報 (v1/v2c ではコミュニティ名、v3ではユーザーとコンテキスト)
- %q
- trap サブタイプ (10進数)
- %s
- SNMP バージョン番号 (0: v1, 1: v2c, 2: v3)
- %S
- SNMPv3 セキュリティモデルバージョン番号
- %t
- ( time(2) によって返される) 10進数のオペレーティングシステムの開始時刻 (エポック)
- %T
- sysUpTime.0 varbind の値を秒で
- %u
- SNMPv3 セキュリティ名あるいは v1/v2c のコミュニティ名
- %v
- 通知ペイロードから variable-bindings のリスト。 代替フォームが要求された場合、これらはタブあるいはコンマや空白によって区切られる。 %V も参照。
- %V
- variable-bindings セパレーターを指定する。 これは次の % まで (文字列に % を埋め込みたい場合は、\% を使う) 文字のシーケンスを取る。
- %w
- trap タイプ (10進数)
- %W
- trap の説明
- %y
- ローカルシステム上の現在の年
- %Y
- sysUpTime.0 varbind からの年フィールド
これらの値に加えて、 printf(3) のように幅や精度、 フラグを指定することもできる。 次のフラグがサポートされている:
- -
- 左揃え
- 0
- 先行ゼロを使用
- #
- 代替フォームを使用
"代替フォームを使用" フラグは様々な文字列シーケンスフォーマットの挙動を変更する:
- 時間情報は (ローカルタイムゾーンではなく) GMT ベースで表示される
- variable-bindings は (タブ区切りではなく) コンマ区切りのリストになる
- システム稼働時間は (単純な数値ではなく) 人にとって意味のあるフォーマットへ分解される
例:¶
"14:03 TRAP3.1 from humpty.ucd.edu" のようなメッセージを得るには、このようなものを使う:
snmptrapd -P -F "%02.2h:%02.2j TRAP%w.%q from %A\n"
ローカル時間ではなくGMT で同様のものが欲しい場合は
snmptrapd -P -F "%#02.2h:%#02.2j TRAP%w.%q from %A\n"
待受アドレス¶
デフォルトでは snmptrapd は、すべての IPv4 インターフェース上の UDP 162 番ポートで SNMP TRAP と INFORM パケットを待ち受ける。 しかしこれは snmptrapd へ引数として、 ひとつ あるいは 複数の待受アドレスを指定することで 挙動を変えることが出来る。 待受アドレスのフォーマットについての情報は snmpd(8) マニュアルページを参照。
NOTIFICATION-LOG-MIB サポート¶
net-snmp 5.0 現在、 snmptrapd アプリケーションは NOTIFICATION-LOG-MIB をサポートする。 それはマスター snmpd エージェントへの AgentX サブエージェント接続を開き、 通知ログテーブルを登録することで実現する。 snmpd アプリケーションが先に動き出す限りは それ自身をアタッチする。したがって nlmLogTable や nlmLogVariableTable 経由で最後に記録された通知を表示することが出来る。 このサポートを無効にするには snmptrapd.conf ファイルと "doNotRetainNotificationLogs" トークンを参照。 MIB 自身についての詳細は NOTIFICATION-LOG-MIB を参照。
拡張性と設定¶
snmptrapd.conf(5) マニュアルページを参照。
関連項目¶
snmpcmd(1), snmpd(8), printf(3), snmptrapd.conf(5), syslog(8), traptoemail(1), variables(5)
27 Apr 2014 | V5.8 |